Network equipment manufacturers and telecommunication companies rely upon load testing equipment to generate (OSI) layer 4-7 traffic. However, it is estimated that testing protocols offered by testing companies represent less than 15% of all protocols currently used over the Internet. For a number of reasons, both economical and functional, it is typically not feasible for testing equipment to generate more than a limited number of testing protocols.
First, in order to meet the needs of their customers, third-party network test vendors must bring testing products to market as soon as possible. However, it can be expensive and time-consuming to develop a testing protocol. It may take in excess of a year to deliver a testing protocol to the market. A lag time in delivery increases the possibility that a particular testing product will be obsolete, even before its initial release.
Furthermore, many, if not most, of the protocols currently in common use are proprietary, and were developed without a public RFC (Request for Comments). Some common examples of this type of protocol include Skype, iTunes, BitTorrent, and the like. Generally speaking, these proprietary protocols are impossible to replicate with standard programming techniques and cannot be offered by typical network testing vendors. There is a thus a significant need for third-party network testing equipment vendors to be able to provide a testing methodology that allows protocols to be generated instantaneously, whether open or proprietary, for network load testing.
In one current approach, raw network traffic is captured in a PCAP (“packet capture”) file. PCAP is an open-source network-traffic capture library used by many BSD, Linux, and UNIX application. A PCAP file includes every network transaction that takes place between associated hosts/ports over a given period of time. These transactions are time-stamped with respective IP addresses, port addresses, and network routing attributes. After capture, a PCAP file can be “replayed” to attempt to reproduce the captured transactions.
Examples of conventional approaches are set forth in U.S. Patent Application Publication Nos. 2007/0248029 (Merkey et al.) and 2007/0276938 (Ottamalika et al.), each of which is incorporated by reference herein as if set forth in its entirety.
Using conventional techniques, it is possible to “clone” captured network transactions. Thus, the network load can be scaled upward by adding cloned transactions to a PCAP file prior to replay, thereby increasing the total number of transactions. However, as discussed in greater detail below, conventional techniques suffer from a number of drawbacks, particularly with respect to such issues as session content, session integrity and session scalability.
It would thus be desirable to provide methods, systems and computer program code products that allow the creation of a desired network testing load, while maintaining session content, session integrity and session scalability in their entireties.